#include "Sarpe.h"
Sarpe::Sarpe(){
  Gender a=static_cast<Gender>(rand()%2);
  Culoare b=static_cast<Culoare>(rand()%4);
  (*this).limitaVarsta=300;
  (*this).varsta=0;
  (*this).sex=a;
  (*this).culoarePiele=b;
  (*this).oua=3;
  (*this).specie=sarpe;
}

 void Sarpe::print(){
  std::cout<<"Sarpe |";
  if ((*this).isMale()) std::cout<<" Sex: M |";
  else std::cout<<" Sex: F |";
  std::cout<<" Varsta: "<<(*this).getVarsta()<<" | ";
  if ((*this).getCuloarePiele()==alb) std::cout<<"Culoare piele: alba\n";
  if ((*this).getCuloarePiele()==negru) std::cout<<"Culoare piele: neagra\n";
  if ((*this).getCuloarePiele()==gri) std::cout<<"Culoare piele: gri\n";
  if ((*this).getCuloarePiele()==maro) std::cout<<"Culoare piele: maro\n";
}

bool Sarpe::isGestant()
{
    if ((*this).isMale()) return false;
    else if((*this).getNrOua()>0 && (*this).getVarsta()>11) return true;
    return false;

}

Sarpe* Sarpe::giveBirth(){
   (*this).oua--;
   return new Sarpe();
}

void Sarpe::distruge()
  {
     this->~Sarpe();
  }
